# -*- coding: utf-8 -*-
# @Time    : 2020/5/26 19:22
# @Author  : Leeli
# @Email   : lililove2000@163.com
# @File    : main.py
# @Software: PyCharm

# 导入Kivy的App类，它是所有Kivy应用的基础
from kivy.app import App
# Kivy内置了丰富的控件(widget),如按钮(button)，复选框(checkbox)，标签(label)，输入框(textinput)，滚动容器(scrollable container)等
from kivy.uix.button import Button
# 引入BoxLayout布局
from kivy.uix.boxlayout import BoxLayout


class IndexPage(BoxLayout):
    # 初始化
    def __init__(self, **kwargs):
        super().__init__(**kwargs)
        # 添加一个按钮
        self.join = Button(text="Hello World")
        # 将按钮添加到页面控件中
        self.add_widget(self.join)


# 从App类中继承了Kivy应用最基本的方法，如创建窗口、设置窗口的大小位置等
class TestApp(App):
    # 实现TestApp类的build()方法（继承自App类）
    def build(self):
        # build()方法返回的控件，在Kivy中，称之为“根控件”(root widget)
        # Kivy将自动缩放根控件，让它填满整个窗口
        return IndexPage()


# 当.py文件被直接运行时，if __name__ == "__main__"之下的代码块将被运行
# 当.py文件以模块形式被导入时，if __name__ == "__main__"之下的代码块不被运行
if __name__ == "__main__":
    # 启用应用程序
    TestApp().run()
